package cn.client.data.remoteData.bean

import java.text.SimpleDateFormat
import java.util.Date
import java.util.Locale

/**
 * 日期时间和时间戳互转工具
 */
object DateTimeUtils {

    private val dateFormat = SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.getDefault())

    /**
     * 将时间戳（毫秒）转换为日期时间字符串
     */
    @JvmStatic
    fun dateTimeToStr(dateTime: Long): String {
        return dateFormat.format(Date(dateTime))
    }

    /**
     * 将日期时间字符串转换为时间戳（毫秒）
     */
    @JvmStatic
    fun strToDateTime(dateTimeStr: String): Long {
        return dateFormat.parse(dateTimeStr)?.time ?: 0L
    }
}

/**
 * 日期和时间戳互转工具
 */
object DateUtils {

    private val dateFormat = SimpleDateFormat("yyyy-MM-dd", Locale.getDefault())

    /**
     * 将时间戳（毫秒）转换为日期字符串
     */
    @JvmStatic
    fun dateToStr(date: Long): String {
        return dateFormat.format(Date(date))
    }

    /**
     * 将日期字符串转换为时间戳（毫秒）
     */
    @JvmStatic
    fun strToDate(dateStr: String): Long {
        return dateFormat.parse(dateStr)?.time ?: 0L
    }
}


//fun main() {
//    // 假设服务端返回了时间戳，我们这里用Long类型接收它
//    val timestamp: Long = 1625079600000L
//
//    // 将时间戳转换为字符串：用于显示UI
//    val timestampStr: String = DateTimeUtils.dateTimeToStr(timestamp)
//    println("时间戳转字符串: $timestampStr")
//
//    // 将字符串转换回时间戳：用于发送到服务端
//    val convertedTimestamp = DateTimeUtils.strToDateTime(timestampStr)
//    println("字符串转时间戳: $convertedTimestamp")
//}
